home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / wingate.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  117 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. #
  5. # See the Nessus Scripts License for details
  6. #
  7.  
  8. if(description)
  9. {
  10.  script_id(10309);
  11.  script_version ("$Revision: 1.15 $");
  12.  script_cve_id("CVE-1999-0291");
  13.  
  14.  name["english"] = "Passwordless Wingate installed";
  15.  name["francais"] = "Wingate est installΘ sans mot de passe";
  16.  script_name(english:name["english"],
  17.           francais:name["francais"]);
  18.  
  19.  desc["english"] = "Wingate is a program that allows
  20. a Windows98 computer to act as a proxy.
  21. Unfortunately, the default configuration is too 
  22. permissive and allows anyone to use this computer 
  23. to connect anywhere, thus hiding his real IP address.
  24.  
  25. This WinGate server does not ask for any
  26. password, and thus can be used by an attacker
  27. from anywhere as a telnet relay.
  28.  
  29. Solution : check the WinGate configuration.
  30.  
  31. Risk factor : High";
  32.  
  33.  desc["francais"] = "Wingate est un programme qui
  34. permet de transformer un poste Windows98 en
  35. proxy. 
  36. HΘlas, ce programme vient avec une configuration
  37. trop permissive qui permet α n'importe qui de se
  38. servir de cette machine pour se connecter n'importe
  39. o∙, cachant ainsi la vrai adresse IP de la personne
  40. en question.
  41.  
  42. Ce serveur Wingate ne demande aucun mot de passe,
  43. et par consΘquent peut etre utilisΘ par des pirates
  44. comme relais telnet.
  45.  
  46. Solution : vΘrifiez la configuration de WinGate.
  47.  
  48. Facteur de risque : SΘrieux";
  49.  
  50.  
  51.  script_description(english:desc["english"],
  52.              francais:desc["francais"]);
  53.  
  54.  summary["english"] = "Determines if wingate is installed"; 
  55.  summary["francais"] = "DΘtermine si wingate est installΘ";
  56.  script_summary(english:summary["english"],
  57.          francais:summary["francais"]);
  58.  
  59.  script_category(ACT_GATHER_INFO);
  60.  
  61.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison",
  62.            francais:"Ce script est Copyright (C) 1999 Renaud Deraison");
  63.  
  64.  family["english"] = "Firewalls"; 
  65.  family["francais"] = "Firewalls";
  66.  
  67.  script_family(english:family["english"],
  68.             francais:family["francais"]);
  69.  script_dependencie("find_service.nes");
  70.  script_require_ports("Services/telnet", 23);
  71.  exit(0);
  72. }
  73.  
  74. #
  75. # The script code starts here
  76. #
  77.  
  78. port = get_kb_item("Services/telnet");
  79. if(!port) port = 23;
  80.  
  81. if(get_port_state(port))soc = open_sock_tcp(port);
  82. else exit(0);
  83. if(soc)
  84. {
  85. buffer = recv(socket:soc, length:1);
  86. n = strlen(buffer);
  87. if(n == 0)exit(0);
  88.  
  89. buffer = recv(socket:soc, length:7);
  90. if(!buffer){
  91.         close(soc);
  92.         exit(0);
  93.        }        
  94. b = string("localhost\r\n");
  95. send(socket:soc, data:b);
  96. r = recv(socket:soc, length:1024);
  97. if(!r){
  98.     close(soc);
  99.     exit(0);
  100.     }
  101. r = tolower(r);
  102. for(i=0;i<11;i=i+1){
  103.         d = recv(socket:soc, length:1);
  104.         if(!d){
  105.             close(soc);
  106.             exit(0);
  107.             }
  108.         }
  109. r = recv(socket:soc, length:100);
  110. r = tolower(r);
  111. if(("connecting to host" >< r)){
  112.     security_hole(port);
  113.     set_kb_item(name:"wingate/enabled", value:TRUE);
  114.     }
  115. close(soc);
  116. }
  117.